package com.woniuxy.dr_mall.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.dr_mall.entity.*;

import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author 张哲轩
 * @since 2021-08-11
 */
public interface IDrOrdersService extends IService<DrOrders> {

    /**
     * 根据用户id查询下单过的商品信息
     *
     * @param userId 用户id
     * @return 购买过的商品信息
     * @author yy
     * @since 2021-8-14 16:44
     */
    List<DrProducts> getOrdersByUserId(int userId);

    /**
     * 根据购物车id查询要购买的商品信息
     *
     * @param id    购物车id
     * @return  商品信息
     * @author yy
     */
    DrCart getCartsById(int id);

    /**
     * 增加订单
     * @param carts 购物车里sku
     * @param addressMsg    地址信息
     * @author yy
     */
    DrOrders add(List<DrCart> carts, DrAddress addressMsg,int userId,Integer skuId);

    List<DrOrders> getAllOrders();


    //通过用户id，查询用户的订单信息 2021-8-16 叶官鑫

    List<DrOrders> userIdSelectOrders(int userId);

    void  forbidById(int userId);

    //通过用户id，和订单id 对订单进行逻辑删除 叶官鑫 2021-8-17
    void idDeleteOrder(int userId,int orderId);

    //通过订单id，查询订单信息以及用户的信息 叶官鑫 2021-8-17
    DrOrders selectOrderByid(int orderId);

    //通过订单id查询商品详情信息，以及规格信息 叶官鑫 2021-8-17

    List<DrOrderItemView> selectProductsImformationById(int orderId);

    int getCountByUserId(int userId);
}
